Unit Testing হলো সফটওয়্যার ডেভেলপমেন্টে ব্যবহৃত একটি প্রক্রিয়া যেখানে কোডের ছোট ছোট অংশ (unit) আলাদাভাবে পরীক্ষা করা হয়। একটি unit সাধারণত একটি ক্লাস, মেথড বা ফাংশন হতে পারে, যার মধ্যে নির্দিষ্ট কার্যকারিতা থাকে। Unit Testing এর মাধ্যমে কোডের বিভিন্ন অংশের কার্যকারিতা নিশ্চিত করা হয় এবং বাগ বা সমস্যা চিহ্নিত করা সহজ হয়।
ASP.Net অ্যাপ্লিকেশনে Unit Testing সাধারণত XUnit, NUnit, বা MSTest ফ্রেমওয়ার্ক ব্যবহার করে করা হয়। এই পরীক্ষা করার মাধ্যমে নিশ্চিত করা যায় যে আপনার কোড প্রত্যাশিতভাবে কাজ করছে কিনা, এবং কোডের পরিবর্তন বা রিফ্যাক্টরিংয়ের পর কোন অপ্রত্যাশিত পারফরম্যান্স বা ত্রুটি ঘটছে কিনা।
Unit Testing এ প্রতিটি ছোট কোড ব্লক আলাদাভাবে পরীক্ষা করা হয়। ধরুন, একটি মেথড রয়েছে যা দুটি সংখ্যা যোগ করে, তাহলে আপনি Unit Test এ এই মেথডটির বিভিন্ন ইনপুট দিয়ে পরীক্ষা করবেন, যেমন:
প্রতিটি ক্ষেত্রে মেথডটি সঠিক আউটপুট দিচ্ছে কিনা তা যাচাই করবেন। যদি না দেয়, তবে আপনি দ্রুত জানতে পারবেন কী সমস্যা এবং কোথায় সমস্যা।
ASP.Net Core অ্যাপ্লিকেশনে Unit Testing করতে হলে, প্রথমে একটি Test Project তৈরি করতে হবে। এখানে XUnit ব্যবহার করা হবে, যা খুবই জনপ্রিয় একটি টেস্ট ফ্রেমওয়ার্ক।
dotnet add package xunit
dotnet add package Microsoft.NET.Test.Sdk
এখানে একটি সহজ ক্লাস তৈরি করা হচ্ছে, যা দুটি সংখ্যা যোগ করবে।
public class Calculator
{
public int Add(int a, int b)
{
return a + b;
}
}
এখন আমরা Calculator ক্লাসের Add মেথডের জন্য একটি Unit Test তৈরি করব।
using Xunit;
public class CalculatorTests
{
[Fact]
public void Add_WithTwoPositiveNumbers_ReturnsCorrectSum()
{
// Arrange
var calculator = new Calculator();
// Act
var result = calculator.Add(2, 3);
// Assert
Assert.Equal(5, result); // আমরা আশা করি যে 2 + 3 এর ফলাফল হবে 5
}
[Fact]
public void Add_WithNegativeNumber_ReturnsCorrectSum()
{
// Arrange
var calculator = new Calculator();
// Act
var result = calculator.Add(-2, 3);
// Assert
Assert.Equal(1, result); // আমরা আশা করি যে -2 + 3 এর ফলাফল হবে 1
}
}
এই Test Class-টি XUnit ফ্রেমওয়ার্কের মাধ্যমে টেস্ট করা হবে। Fact অ্যাট্রিবিউটের মাধ্যমে প্রতিটি টেস্ট মেথড চিহ্নিত করা হয় এবং Visual Studio বা CLI থেকে টেস্ট চালানো যায়।
dotnet test
এই কমান্ডটি টেস্ট রান করবে এবং আপনি ফলাফল দেখতে পাবেন।
Unit Testing হল সফটওয়্যার ডেভেলপমেন্টের একটি গুরুত্বপূর্ণ প্রক্রিয়া যা কোডের সঠিকতা যাচাই করতে ব্যবহৃত হয়। ASP.Net Core অ্যাপ্লিকেশনে Unit Testing সাধারণত XUnit, NUnit বা MSTest ফ্রেমওয়ার্ক ব্যবহার করে করা হয়। এটি ডেভেলপারদের কোডে সমস্যা বা বাগ দ্রুত চিহ্নিত করতে সাহায্য করে এবং কোডের স্থিতিশীলতা বজায় রাখে।
Read more